package edu.usmp.p2.alquilar.action;

import java.sql.Date;

import javax.persistence.EntityManager;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import com.opensymphony.xwork2.ActionSupport;


import edu.usmp.p2.alquilar.service.AlquilarService;
import edu.usmp.p2.disfraz.model.Pedido;
import edu.usmp.p2.disfraz.model.Vestuario;
import edu.usmp.p2.util.Utilitario;

/**
 * Permite Registrar el Alquiler de un Vestuario
 * @author ALDO
 *@version 1.1
 *@since 31/01/2013
 */

public class AlquilarVestuarioAction {
	private int id;
	private Vestuario vestuario;
	private AlquilarService service = new AlquilarService();	
	private Pedido pedido;
	private String mensaje;
	private double cantidad;
	private double dias;
	private int tmp;

	
	/**Permite buscar un vestuario
	 * @param 
	 * @return
	 */
	
	
	public String execute(){
		String camino="success";
		vestuario=service.buscarVestuario(String.valueOf(id));
		return camino;
	}
	/**Permite Registra el alquiler
	 * @param
	 * @return
	 */
	 public String alquila(){
		 String camino="success";
		 
		 try{vestuario=service.buscarVestuario(String.valueOf(vestuario.getIdVestuario()));
	
			 if(pedido.getFecha().equals(vestuario.getFechaAlquiler())){
			 mensaje="Vestuario no disponible para esa fecha";
			 camino="error";
			 }else{
			 
			 double montoTotal=vestuario.getPrecioAlq()*cantidad*dias;
				int mTotal=(int)montoTotal;
				int dia=(int)dias;
				pedido.setVestuario(vestuario.getNombre());
				pedido.setMontoTotal(mTotal);
				pedido.setDias(dia);
			 	pedido.setEstado("pendiente");
				pedido.setTmp(2);
				service.registrarPedido(pedido);
				
				mensaje="Registro Satisfactorio";
			 }	
			}catch (Exception e) {
				mensaje = e.getMessage();
				camino="error";
			}
		 return camino;
	 }
	 
	
	public Vestuario getVestuario() {
		return vestuario;
	}



	public void setVestuario(Vestuario vestuario) {
		this.vestuario = vestuario;
	}



	public int getId() {
		return id;
	}


	public void setId(int id) {
		this.id = id;
	}
	public Pedido getPedido() {
		return pedido;
	}
	public void setPedido(Pedido pedido) {
		this.pedido = pedido;
	}
	public String getMensaje() {
		return mensaje;
	}
	public void setMensaje(String mensaje) {
		this.mensaje = mensaje;
	}
	
	public double getCantidad() {
		return cantidad;
	}


	public void setCantidad(double cantidad) {
		this.cantidad = cantidad;
	}
	public double getDias() {
		return dias;
	}
	public void setDias(double dias) {
		this.dias = dias;
	}
	
	public int getTmp() {
		return tmp;
	}
	public void setTmp(int tmp) {
		this.tmp = tmp;
	}
	
}
